منابع مشابه
Monadic Refinement Types for Verifying JavaScript Programs
Researchers have developed several special-purpose type systems and program logics to analyze JavaScript and other dynamically typed programming languages. Still, no prior system can precisely reason about both higher-order programs and mutable state; each system comes with its own delicate soundness proof (when such proofs are provided at all); and tools based on these theories (when they exis...
متن کاملTowards Automatic Verification of JavaScript Programs
JavaScript, due to its dynamic nature and complex semantics, has fewer verification tools than languages such as C and Java. In order to tackle this challenge, we introduce for the first time a bi-abductive symbolic analysis for JSIL, an intermediate language for JavaScript verification. Our analysis is scalable and can fully automatically infer specifications of JSIL procedures that are non-re...
متن کاملCertified Desugaring of Javascript Programs using Coq
JavaScript is a programming language originally developed for client-side scripting in Web browsers; its use evolved from simple scripts to complex Web applications. It has also found use in mobile applications, server-side network programming, and databases. A number of semantics were developed for the JavaScript language. We are specifically interested in two of them: JSCert and JS. In order ...
متن کاملA Complete Automation of Unit Testing for JavaScript Programs
Problem statement: Program testing is expensive and labor intensive, often consuming more than half of the total development costs, and yet it is frequently not done well and the results are not always satisfactory. The objective of this paper is to present an automatic test data generation tool that aims to completely automate unit testing of JavaScript functions. The methodology: In order to ...
متن کاملInterprocedural Type Specialization of JavaScript Programs Without Type Analysis
Previous work proposed lazy basic block versioning, a technique for just-in-time compilation of dynamic languages which we believe represents an interesting point in the design space. Basic block versioning is simple to implement, simple enough that a single developer can build a complete just-in-time compiler for JavaScript in a year, yet it performs surprisingly well as it propagates context-...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: The JALT CALL Journal
سال: 2005
ISSN: 1832-4215
DOI: 10.29140/jaltcall.v1n1.3